package FileOutput;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

/*
 * 复制"./src/resources/abc/1.txt"里面的数据到"./src/resources/abc/3.txt"文件中
 * 分析：
 * 数据源："./src/resources/abc/1.txt"，属于文本文件，应该使用字符流，但是没学，只能使用字节流，读入，FileInputStream
 * 目的地："./src/resources/abc/3.txt"，属于文本文件，应该使用字节流，但是没学，只能使用字节流，写出,FileOutputStream
 * 思路：
 * 	1）创建输入流对象，关联数据源文件；
 *  2）创建输出流对象，关联目的地文件；
 *  3）读取数据，读取硬盘中指定文件中的数据，直到读取文件的末尾处；
 *  4）写出数据，将上述每次读取的文件中的内容写到目标文件中；
 *  5）关闭资源；
 */
public class FileInputStreamTest {
    public static void main(String[] args) throws IOException {
        //1）创建输入流对象，关联数据源文件；
        FileInputStream fis = new FileInputStream("./src/resources/abc/1.txt");
        //2）创建输出流对象，关联目的地文件
        FileOutputStream fos = new FileOutputStream("./src/resources/abc/3.txt");
        //3）读取数据，读取硬盘中指定文件中的数据，直到读取文件的末尾处；
        int b = 0;
        while ((b = fis.read()) != -1) {
            //说明数据源文件中还有数据，将每次读取的数据写到目的地文件中
            fos.write(b);
        }
        //关闭资源
        fis.close();
        fos.close();
    }
}
